﻿using System;
using System.Data;

namespace Banesco.Entidades
{
    public class UsuarioBase
    {
        //public string Usuario; esta campo varia para el caso vendedor y comprador
        public string Nombre = string.Empty;
        public string Clave = string.Empty;
        public string Tipo = string.Empty;
        public string Correo = string.Empty;
        public string Telefono = string.Empty;
        public string ValorCliente = string.Empty;
        public string Pais = string.Empty;
        public string Ciudad = "";
        public string Activo = string.Empty;
        public string ContratoVigente = string.Empty;
        public string Empresa = string.Empty;
        public int IDRol;
        public string RolName = string.Empty;
        public DateTime UltFecModClave;
        public int DiasParaModClave;
        public int DiasParaRenovar;
        public string MsgEstadoContrato = string.Empty;
        public string LogoEmpresa = string.Empty;
        public string Idioma = "ESP";

        public int IDPlan = 0;
        public string NombrePlan = "";
        public int MaxUsuarios = 0;
        public int MaxOperaciones = 0;

        public string Equipo = ""; //Informacion del equipo desde que el usuario se conecto al sistema
        public DataSet dsCatalogos;  //Cache de Catalogos del Sistema. Este atributo no debe copiarse cuando se hace la invocacion a la capa de WS para evitar q viajen estos datos innecesarios a las capas de BackEnd


        public bool TieneContratoVigente { get { return ContratoVigente.Equals("S"); } }
        public bool DebeCambiarClave { get { return (DiasParaModClave <= 0); } }

        public int IDCentroCosto = 0;
        public string CentroCosto=string.Empty;
        public string UserName = "";

        public string EmailEmpresa = "";


        public int IdSolicitud = 0;
        public int IdCliente = 0;
        public int IdCuenta = 0;
        public string Identificacion = "";
        public string Cliente = "";
        public string TipoIdentificacion = "";
        public string TipoCliente = "";
        public string SeguroSocial = "";

        public string Email = "";

        public string Estado = "";
        public string PC = "";
        public string PrimerNombre = "";
        public string SegundoNombre = "";
        public string PrimerApellido = "";
        public string SegundoApellido = "";
        public string ApellidoDeCasada = "";
        public string Sexo = "";
        public string EstadoCivil = "";
        public DateTime FechaDeNacimiento;
        public int Edad ;
        public string Provincia = "";
        public string Distrito = "";
        public string Corregimiento = "";

        public string Direccion = "";
        
        public string Barrio = "";
        public string Calle = "";
        public string Residencia = "";
        public string NumeroCasa = "";
        public string ApartadoPostal = "";
        //public string CodigoPostal = "";
        public string UbicacionFacilResidencia = "";
        public string ResidenteEnPanama = "";
        public string ClienteOtroPais = "";
        public string ClientePais = "";
        public string TelefonoCasa = "";
        public string TelefonoCelular = "";
        public string OtroTelefono = "";
        public string NombreEmpresa = "";
        public string CodigoIndustria = "";
        public string TipoEmpresa = "";
        public string TipoNegocio = "";
        public string DireccionEmpleo = "";
        public string CiudadEmpleo = "";
        public string TelefonoOficina = "";
        public string TelefonoFax = "";
        public string IdentificacionContraloria = "";
        public string NumeroDeEmpleado = "";
        public DateTime FechaIngresoEmpleo;
        public string TiempoDeEmpleo = "";
        public string CorreoDeEmpleo = "";
        public string RangoSalarial = "";
        public decimal SalarioActual;
        public string NivelEducacion = "";
        public string Profesion = "";
        public string FuenteDeIngreso = "";
        public string Cargo = "";
        public string TipoDeActividad = "";
        public string CuentaAhorros = "";
        public string CuentaCorriente = "";
        public string BancaEnLinea = "";
        public string VisaDebito = "";
        public string SucursalDePreferencia = "";
        public string NombreLegal = "";
        public string NombreComercial = "";
        public string NoRegistroDeSociedad = "";
        public string TipoSociedad = "";
        public string PaisRegistroSociedad = "";
        public DateTime FechaRegistro;
        public DateTime FechaInicioOperaciones;
        public decimal VolumenMensualVentas;
        public string TelefonoOficina2 = "";
        public string EsTitular = "";
        public string EsFirmante = "";
        public DateTime FechaCreacionCuenta;
        public string EstadoSolicitud = "";
        public string CodigoEstadoSolicitud = "";
    
    
    //NUEVOS DATOS DE USUARIO

        public decimal  OtrosIngresos = 0;
        public string FuenteOtrosIngresos = "";
        public string PaisEmpleo = "";
        public string ProvinciaEmpleo = "";
        public string DistritoEmpleo = "";
        public string CorregimientoEmpleo = ""; 
        public string BarrioEmpleo = "";
        public string ResidenciaEmpleo = "";
        public string NumeroCasaEmpleo = "";
        public string UbicacionFacilEmpleo = "";   
        public string CalleEmpleo = "";
        public string ApartadoPostalEmpleo = "";

        public string TipoFirma = "";
        public string OrigenFondoTrabajo = "";
        public string OrigenFondoHerencia = "";
        public string OrigenFondoVenta = "";
        public string OrigenFondoInversiones = "";
        public string OrigenFondoServiciosPrestados = "";
        public string OrigenFondoReciboDeDividendos = "";
        public string OrigenFondoEspecificacion = "";
        public decimal MontoApertura = 0;
        public string UsoDeLaCuenta = "";
        public string ModoAperturaEfectivo = "";
        public string ModoAperturaTransferencia = "";
        public string ModoAperturaChequeLocal = "";
        public string ModoAperturaChequeExtranjero = "";
        public string ModoAperturaChequeGerenciaBanesco = "";
        public string ModoAperturaChequeGerenciaOtroBanco = "";
        public string ModoAperturaChequePropio = "";
        public string ModoAperturaDebitoACuenta = "";
        public string ModoAperturaOtros = "";
        public string ModoAperturaOtrosEspecificacion = "";
        public int NumeroDepositosRetirosAlMes = 0;
        public decimal MontoDepositosRetirosAlMes = 0;
        public string SePermitenTransferencias = "";
        public int NumeroTransferenciasEmitidas = 0;
        public decimal MontoTransferenciasEmitidas = 0;
        public int NumeroTransferenciasRecibidas = 0;
        public decimal MontoTransferenciasRecibidas = 0;
        public int NumeroRetirosEnEfectivo = 0;
        public decimal MontoRetirosEnEfectivo = 0;
        public int NumeroDepositosEnEfectivo = 0;
        public decimal MontoDepositosEnEfectivo = 0;
        public int NumeroDepositosOtros = 0;
        public decimal MontoDepositosOtros = 0;
        public string PaisTransferencia1 = "";
        public string PaisTransferencia1Env = "";
        public string PaisTransferencia1Rec = "";
        public string PaisTransferencia2 = "";
        public string PaisTransferencia2Env = "";
        public string PaisTransferencia2Rec = "";
        public string PaisTransferencia3 = "";
        public string PaisTransferencia3Env = "";
        public string PaisTransferencia3Rec = "";
        public string PaisTransferencia4 = "";
        public string PaisTransferencia4Env = "";
        public string PaisTransferencia4Rec = "";
        public string EsPEP = "";
        public string EsIntermediario = "";
        public string NombrePropietarioFondos = "";
        public string TipoIdentificacionPropietarioFondos = "";
        public string IdentificacionPropietarioFondos = "";
        public string DireccionEntregaVisaDebito = "";
        public string DireccionEntregaBancaEnLinea = "";
        public string SeguroFraudeVisaDebito = "";
        public string Chequera = "";
        public int CantidadChequera = 0;
        public string OrigenDeLosFondos = "";
        public string EsBeneficiario = "";
        //Esto es para guardar el XML a partir de la informacion almacenada
        public string XMLMessage = "";
    
    
    
    
    
    
    }
    
    public class UsuarioVendedor : UsuarioBase
    {
        public int IDUsuarioVendedor;
        public int IDVendedor;
    }
    
    public class UsuarioComprador : UsuarioBase
    {
        public int IDUsuarioComprador;
        public int IDComprador;
    }

    public class UsuarioSistema
    {
        public int IDUsuario;
        public string NombreUsuario = string.Empty;
        public string Contraseña = string.Empty;
        public string NombreUsuarioSistema = string.Empty;
        public string NombreCompleto = string.Empty;
        public string NumeroTelefono = string.Empty;
        public string CorreoElectronico = string.Empty;
        public string Estado = string.Empty;
        public int IDUsuarioCreador;
        public DateTime FechaCreacion;
        public int IDUsuarioModificacion;
        public DateTime FechaModificacion;
        public DateTime FechaModificacionContraseña;
    }
}